home *** CD-ROM | disk | FTP | other *** search
/ Unreal Tournament Game Programming for Teens / UnrealTournamentGameProgrammingForTeens.iso / Chapter Files / Chapter07 / CommandTouchTrigger.txt < prev    next >
Encoding:
Text File  |  2006-11-01  |  1.7 KB  |  52 lines

  1. //=================================================================
  2. // CommandTouchTrigger 
  3. // See CommandTouchTriggerV01.txt
  4. //=================================================================
  5. class CommandTouchTrigger extends Trigger placeable;
  6.     // #1
  7.     // data members for messages and random numbers
  8.     var private string FirstMessage;
  9.     var private string SecondMessage;
  10.     var private int RandomNumber;
  11.  
  12. function PostBeginPlay()
  13. {
  14.     // #2 
  15.     // Call PostBeginPlay() in the parent class (Trigger)
  16.     Super.PostBeginPlay();
  17.     Message = FirstMessage;
  18. }// end PostBeginPlay()
  19.  
  20. // #3
  21. // As defined in the parent class,
  22. // Touch() is called when an actor touches the trigger.
  23. function Touch( actor Other )
  24. {
  25.     // #4 
  26.     // Can the touching Actor object affect this Trigger object
  27.     if (IsRelevant( Other ) )
  28.     {
  29.           // #5
  30.           // Cast the Other reference and determine
  31.           // if the pawn is crouching
  32.           if (Pawn(Other).bIsCrouched){
  33.               // #6 Generate a random number and display a message 
  34.               // relevant to crouching pawns
  35.               RandomNumber = Rand(10);
  36.               SecondMessage = "Get up!" @ RandomNumber;
  37.               Message= SecondMessage;
  38.           }// end if
  39.           else{ 
  40.               // #7 The actor's pawn is not crouching
  41.               RandomNumber = Rand(10);                
  42.               FirstMessage = "Get down!" @ RandomNumber;
  43.               Message = FirstMessage;
  44.           }// end else
  45.           // #8 Call the parent class version of Touch()
  46.           // which displays the message to the screen
  47.           Super.Touch(Other);
  48.     }//end outer if
  49. }// end Touch()
  50.  
  51.  
  52.